Expand description
This crate provides a set of APIs to access the remote filesystem using the sftp protocol and is implemented in pure Rust.
It supports sending multiple requests concurrently using WriteEnd
(it can be WriteEnd::clone
d), however receiving responses have to be done
sequentially using ReadEnd::read_in_one_packet
.
To create WriteEnd
and ReadEnd
, simply pass the stdin
and stdout
of
the sftp-server
launched at remote to connect
.
This crate supports all operations supported by sftp v3, in additional to the following extensions:
Modules§
- Changelog for this crate.
Structs§
- Awaitable
- Return (id, res).
- Awaitable
- Return (id, res).
- Awaitable
- Return (id, res).
- Awaitable
- Return (id, res).
- Awaitable
- Awaitable
- Return (id, res).
- Return (id, res).
- Awaitable
- Return (id, res).
- The extension that the sftp-server supports.
- Request Id
- Payload of extended reply response when
crate::request::RequestInner::Limits
is sent. - Entry in
ResponseInner::Name
- The ReadEnd for the lowlevel API.
- SharedData contains both the writer and the responses because:
- Default value is 1970-01-01 00:00:00 UTC.
- It is recommended to create at most one
WriteEnd
per thread usingWriteEnd::clone
.
Enums§
- Buffer that can be used to write data into.
- The data returned by
WriteEnd::send_read_request
. - Error returned by
openssh-sftp-client-lowlevel
andopenssh-sftp-client
Constants§
- Default size of buffer for up/download in openssh-portable
- Default length of download buffer in openssh-portable
- Default number of concurrent outstanding requests in openssh-portable
- Default length of upload buffer in openssh-portable
- Maximum depth to descend in directory trees in openssh-portable
- Minimum amount of data to read at a time in openssh-portable
Traits§
- Any type that can act as a buffer.
Functions§
- Initialize connection to remote sftp server and negotiate the sftp version.